#ifndef BERMUDANSWAPTION_HPP
#define BERMUDANSWAPTION_HPP

#include "timeSequence.hpp"
#include "timeSequenceHolder.hpp"

#include "swap.hpp"
namespace TermStructure
{
	template <typename T, typename TSize = long>
	class BermudanSwaption : public Swap<T,TSize>
	{
	public:
		BermudanSwaption(TimeSequence<T,TSize> &times, TSize swapEnterIndex = 0, TSize swapEndIndex = 0) : SwapEnterIndex(swapEnterIndex), SwapEndIndex(swapEndIndex)
		{
            this->_timeSequence = &times;
		}
		TSize SwapEnterIndex;
		TSize SwapEndIndex;
		T Strike;
		T Notional;
	};
}

#endif